
let baseUrl = 'https://system.wm69.mintennet.com'; //服务器ip地址
// let baseUrl = 'https://nxsdm.wm69.mintennet.com/api'; //服务器ip地址
  
let headerDefault={
  'content-type': 'application/json'
};
/**
 * @description get请求函数，不需要baseurl
 * @param {string} url 请求地址
 * @param {object} params 请求参数
 */
function getHttp(url, params = {},headers={}) {
  let header = Object.assign(headerDefault,headers);//
  return request(baseUrl + url, params, header, 'get');
}
/**
 * @description get请求函数
 * @param {string} url 请求地址
 * @param {object} params 请求参数
 */
function getHttpN(url, params = {}, headers={}) {
  let header = Object.assign(headerDefault, headers);
  return request(url, params, header, 'get');
}
/**
 * @description post请求函数,不需要baseurl
 * @param {string} url 请求地址
 * @param {object} params 请求参数
 * @param {object} headers 请求头
 */
function postHttp(url, params = {}, headers={}) {
  let header = Object.assign(headerDefault, headers);
  // console.log(params,'params')
  return request(baseUrl + url, params, header, 'post');
}
/**
 * @description post请求函数,需要baseurl
 * @param {string} url 请求地址
 * @param {object} params 请求参数
 */
function postHttpN(url, params = {}, headers={}) {
  let header = Object.assign(headerDefault, headers);
  return request(url, params, header, 'post');
}

let header = {}
/**
 * @description 请求函数
 * @param {String} url 请求地址
 * @param {Object} params 请求参数
 * @param {Object} header 请求头
 * @param {String} method 请求方式
 */
function request(url, params, header,method) {
  wx.showLoading({
    title: "正在加载中...",
  })
  let timeStart = Date.now();
  return new Promise((resolve, reject) => {
    wx.request({
      url: url,
      data: params,
      method: method,
      header: header,
      success: function (res) {
        wx.hideLoading();
        console.log(`耗时${Date.now() - timeStart}`);
        /** start 根据需求 接口的返回状态码进行处理 */
        if (res.statusCode >= 200 && res.statusCode <= 400) {
          resolve(res)
        } else {
          wx.showToast({
            title: res.data.msg,
            icon: 'none'
          })
          wx.redirectTo({
            url: '/pages/userLogin/userLogin',
          })
          reject(res); //request failed
        }
        /** end 处理结束*/
      }
    })
  })
}

module.exports = {
  getHttp: getHttp,
  getHttpN: getHttpN,
  postHttp: postHttp,
  postHttpN: postHttpN
}
